# coding: utf-8
# File   :  generate_testcase
# Author :  wangsheng
# @Time  :  2025/5/28 下午2:17
from utils.deepseek_control import testcase_ai,write_testcases_to_excel
# 调用示例
# _data = {'test_cases': [
#     {'case_id': 'BTP_Home_01', 'case_name': '验证用户名输入规则-仅支持大小写字母和下划线', 'priority': '高',
#      'test_type': '功能测试', 'preconditions': '用户进入注册页面',
#      'steps': ["1. 在用户名输入框中输入'Test_User'", '2. 输入有效的密码、邮箱和验证码', '3. 点击注册按钮'],
#      'expected_result': '注册成功，用户被重定向到首页或登录页面'},
#     {'case_id': 'BTP_Home_02', 'case_name': '验证用户名输入规则-包含非法字符', 'priority': '高',
#      'test_type': '功能测试', 'preconditions': '用户进入注册页面',
#      'steps': ["1. 在用户名输入框中输入'Test@User'", '2. 输入有效的密码、邮箱和验证码', '3. 点击注册按钮'],
#      'expected_result': '注册失败，提示用户名仅支持大小写字母和下划线'},
#     {'case_id': 'BTP_Home_03', 'case_name': '验证用户名长度限制', 'priority': '中', 'test_type': '功能测试',
#      'preconditions': '用户进入注册页面',
#      'steps': ["1. 在用户名输入框中输入超过20位的字符'Test_User_Test_User_Test'", '2. 输入有效的密码、邮箱和验证码',
#                '3. 点击注册按钮'], 'expected_result': '注册失败，提示用户名长度不能超过20位'},
#     {'case_id': 'BTP_Home_04', 'case_name': '验证密码复杂度要求', 'priority': '高', 'test_type': '功能测试',
#      'preconditions': '用户进入注册页面',
#      'steps': ["1. 在密码输入框中输入符合要求的密码'Test123!'", '2. 输入有效的用户名、邮箱和验证码', '3. 点击注册按钮'],
#      'expected_result': '注册成功，用户被重定向到首页或登录页面'},
#     {'case_id': 'BTP_Home_05', 'case_name': '验证密码复杂度不足', 'priority': '高', 'test_type': '功能测试',
#      'preconditions': '用户进入注册页面',
#      'steps': ["1. 在密码输入框中输入不符合要求的密码'test123'", '2. 输入有效的用户名、邮箱和验证码', '3. 点击注册按钮'],
#      'expected_result': '注册失败，提示密码需包含大小写字母和符号'},
#     {'case_id': 'BTP_Home_06', 'case_name': '验证邮箱格式', 'priority': '高', 'test_type': '功能测试',
#      'preconditions': '用户进入注册页面',
#      'steps': ["1. 在邮箱输入框中输入无效的邮箱格式'testuser'", '2. 输入有效的用户名、密码和验证码', '3. 点击注册按钮'],
#      'expected_result': '注册失败，提示邮箱格式不正确'},
#     {'case_id': 'BTP_Home_07', 'case_name': '验证邮箱验证码的正确性', 'priority': '高', 'test_type': '功能测试',
#      'preconditions': '用户进入注册页面，并获取了邮箱验证码',
#      'steps': ["1. 在邮箱验证码输入框中输入错误的验证码'0000'", '2. 输入有效的用户名、密码和邮箱', '3. 点击注册按钮'],
#      'expected_result': '注册失败，提示验证码错误'}]}
if __name__ == '__main__':
    prompt = """
        项目名称：车云出行小程序
        模块：登录页
        功能：登录
        参数：用户名（最长20位，仅支持大小写字母和下划线），密码 （最长20位，支持数字字母符号，需包含大小写），邮箱，邮箱验证码
        逻辑：用户输入用户信息登录系统
        """
    write_testcases_to_excel(testcase_ai(prompt))
